#ifndef __ROOM_HPP__
#define __ROOM_HPP__

#include <vector>
#include <memory>

#include "winux.hpp"
#include "message/message.hpp"
#include "broad.hpp"
#include "bubble/bubble.hpp"

class MyServer;
class User;

class Room : public Broad {
public:
    std::vector<std::shared_ptr<Bubble> > bubbleList;
    MyServer* server;

    winux::Mixed getInfo() override;

    Room( MyServer* server );
    
    void addUser( User* user ) override;
    void delUser( uint uid ) override;
    void clearUser( ) override;
};

#endif  //__ROOM_HPP__
